﻿using System;
using System.Collections.Generic;
using Meqs.Entity;
using Meqs.Entity.Views;

namespace Meqs.Logic.Interface
{
    public interface IMoralityHistoryLogic : ICommonLogic<MoralityHistory, int>
    {
        /// <summary>
        /// 获取指定班级列表里的年级
        /// </summary>
        IList<int> GetGrade(String schoolMark, bool showHistory, IList<int> classList);

        /// <summary>
        /// 获取当前评价状态
        /// </summary>
        IList<MoralityState> GetState(int schoolYear, int term,String keyword, String schoolMark, IList<int> clsList);

        /// <summary>
        /// 获取评价历史记录
        /// </summary>
        /// <param name="schoolYear"></param>
        /// <param name="term"></param>
        /// <param name="schoolMark"></param>
        /// <returns></returns>
        MoralityHistory GetHistoryRecordByTerm(int schoolYear, int term, string schoolMark);

        /// <summary>
        /// 添加
        /// </summary>
        /// <param name="schoolMark"></param>
        /// <param name="schoolYear"></param>
        /// <param name="term"></param>
        /// <param name="userId"></param>
        /// <returns></returns>
        int InsertNew(string schoolMark, int schoolYear, int term, int userId);


        /// <summary>
        /// 更新状态
        /// </summary>
        /// <param name="schoolMark"></param>
        /// <param name="historyId"></param>
        /// <param name="status">0-未通过，1-已通过</param>
        /// <returns></returns>
        int UpdateStatus(string schoolMark, int historyId, int status);
    }
}